using XRM.Security.DataAccess.Models;
using XRM.Security.WebUI.Enums;

namespace XRM.Security.WebUI.Models.Template
{
    public static class TemplateSerializer
    {
        public static ITemplateSerializer GetTemplateSerializer(PrintFormType type)
        {
            switch (type)
            {
                case PrintFormType.ActIntroducingSCSI:
                    return new ActIntroducingSCSIConverter();

                case PrintFormType.ActSettingSCSI:
                    return new ActSettingSCSIConverter();

                case PrintFormType.PrintRequest:
                    return new PrintRequestConverter();

            }
            return null;
        }
    }

    public interface ITemplateSerializer
    {
        string Serialize(DataAccess.Models.Request req, RequestWorkKind requestWorkKind = null);
    }
}